package com.cskaoyan.day5.map._03_example;

import java.util.HashMap;
import java.util.Map;
import java.util.Random;

/**
 * 1-10_000_000中间生成1000次？
 * 首先，我们生成多少个数字？  1000个
 * 每个数字的范围： 1-10_000_000
 *
 * @author Common-zhou
 * @since 2023-03-03 16:04
 */
public class Demo1 {
    public static void main(String[] args) {
        test1();

        //test2();
    }

    private static void test2() {
        Map<String, String> map = new HashMap<>();
        map.put("110", "警察局");
        map.put("120", "医院");
        map.put("119", "火警");
        map.put("122", "车辆救援");
        map.put("12345", "消费者权益保护");
        // 我们可以通过 110 知道警察局


        // 警察局来查电话
        // Map 最重要的，
        // 1. key value 分别是什么
        // 2.业务有什么需求。

    }

    private static void test1() {
        // Map最关键的是什么东西
        /* 1-10_000_000中间生成1000次？
         * 首先，我们生成多少个数字？  1000个
         * 每个数字的范围： 1-10_000_000
         */

        // key 表示随机生成的数字， value表示次数

        Random random = new Random();
        Map<Integer, Integer> map = new HashMap<>();

        int number = 0;

        // 循环存入
        for (int i = 0; i < 1000; i++) {
            // 生成这个数字
            number = random.nextInt(10_000_000) + 1;

            // 不存在 返回null
            Integer count = map.get(number);
            // 判断一下  count 是否为null
            if (count == null) {
                count = 0;
            }
            count++;

            map.put(number, count);
        }

        System.out.println(map);


    }
}
